package com.ayf.payment.game.api.service;

import com.ayf.payment.game.api.dto.ayb.SignPayProductDTO;
import com.ayf.payment.game.api.dto.ayb.SignPayProductDTO2;
import com.ayf.payment.game.api.dto.criteria.SignPayProductCriteria;

import java.util.List;

public interface SignPayProductService {

    int insertSignPayProduct(SignPayProductDTO dto);
    int insertAyfSignPayProduct(SignPayProductDTO dto);
    Integer insertSignPayProduct2(SignPayProductDTO dto);

    void updateSignPayProduct(SignPayProductDTO dto);

    void updateAyfSignPayProductById(SignPayProductDTO dto);

    void updateApplyInfo(SignPayProductDTO dto);

    SignPayProductDTO getSignPayProductDTOById(Integer id);

    SignPayProductDTO getSignPayProductDTOByMId(Integer mId, String payCode);

    /**
     * 根据商户id和payCode获取
     * @author lch
     * @date 2022/1/19
     */
    SignPayProductDTO getByMerchantIdAndPayCode(Integer merchantId, String payCode);

    /**
     * 根据身份证和payCode获取
     * @param idCard
     * @param payCode
     * @return
     */
    SignPayProductDTO getByIdCardAndPayCode(String idCard,String payCode);

    List<SignPayProductDTO> getSignPayProductList(SignPayProductDTO dto);

    List<SignPayProductDTO2> selectPageSignPayProduct(SignPayProductCriteria selectCriteria);

    /**
     * 删除
     * @author lch
     * @date 2022/1/20
     */
    void removeById(Integer id);

    List<SignPayProductDTO> litReviewSignPayProduct();

    void deleteByMerchantIdAndCode(Integer merchantId, String payCode);

}
